1. Field of the Invention
Apparatuses and methods consistent with the present invention relates to a stepping motor speed control method, and more particularly, to controlling a stepping motor to have a uniform instantaneous speed and an apparatus suitable for the same.
2. Description of the Related Art
The disks of a hard disk drive (HDD) are rotably driven by a spindle motor. Further, the process of booting an HDD begins after the spindle motor reaches a normal speed. An index pulse, which is generated by the spindle motor, is used as a reference of all operations of an HDD, such as formatting, servo writing and diagnosis.
With respect to disk rotation speed of an HDD, 3,600 rpm was mainly used several years ago. Presently, 4,200 rpm is mainly used for IDE-based low price and low performance types. 5,400 rpm is mainly used for intermediate and low price types, and 7,200 rpm is mainly used for high price and high performance types. For SCSI HDDs, 7,200 to 10,000 rpm spindle motors are used, and it is predicted that spindle motors of over 12,000 rpm will be used in the future.
A core element of spindle motors involves maintaining a uniform speed within a standard corresponding to +/−0.1% (4˜5 rpm) of a rated speed. If a spindle motor is not maintained in the uniform speed, read errors may occur even if the surfaces of the disks of the HDD are normal. In a severe case, the HDD cannot be used if the uniform speed is not maintained
Stepping motors are commonly used as the spindle motors for an HDD.
A stepping motor is a motor rotates at a constant angle by inputting an external DC voltage or current to each phase terminal of the motor in a switching method. The stepping motor is a kind of digitally controlled device which is suitable for a digital pulse type of speed control. That is, the stepping motor rotationally moves by a rotation angle corresponding to one step in response to one digital pulse and continuously moves in proportion to the number of pulses and a pulse input speed per unit time.
The stepping motor operates by intermittent driving, continuous rotation driving, forward/reverse driving, shift driving and micro step driving. With intermittent driving, one step driving for one hour or one step driving for one day can be easily realized, and by, using the micro step driving, ultra-fine step angle driving can be realized. Also, an optimal rotation angle can be controlled in response to the number of input pulses if continuous rotation driving is used.
For an HDD, there are three methods to measure a speed of a spindle motor. An index method measures a period of an index signal which is generated every one revolution of a stepping motor, a servo gate method measures a detection period of a servo signal which is recorded on a rotating disk, and a back electromotive force (EMF) method measures a period of a back EMF signal of a stepping motor.
The servo gate method is not widely used due to signal loss caused by defective sectors and a requirement of a wide bandwidth for servo signal detection.
The index method is robust against measurement noise and is commonly used for 3.5″ HDDs. The back EMF method has an advantage in that a speed of a stepping motor can be finely controlled phase by phase while having a disadvantage in that noise according to a shape of a stepping motor, i.e., fluctuation of an instantaneous speed, is high.
FIG. 1 is a block diagram of a conventional stepping motor speed control apparatus, showing an example of the back EMF method.
Referring to FIG. 1, the stepping motor speed control apparatus includes an error calculator 102, a controller 104, a disturbance compensator 106, a stepping motor driver 108, a speed measurement unit 110 and a noise compensator 112.
The speed measurement unit 110 measures a rotation speed of a stepping motor and outputs a pulse signal according to rotation of the stepping motor by wave-shaping a back EMF signal.
FIG. 2 is a waveform diagram illustrating a correlation between a stepping motor driving signal and the back EMF signal.
In FIG. 2, the upper waveform denotes the back EMF signal, and the lower waveform denotes the stepping motor driving signal which is supplied by the stepping motor driver 108.
The stepping motor rotates one phase by one phase in response to a positive half wave and a negative half wave of a sinusoidal signal supplied by the stepping motor driver 108. Since N-poles and S-poles of stators in the stepping motor are alternatively deployed, polarity of a signal for rotating a rotor according to these magnetic poles should be changed phase by phase.
The speed measurement unit 110 calculates the rotation speed of the stepping motor by detecting a period of the back EMF signal. The measured speed calculated by the speed measurement unit 110 is supplied to the error calculator 102 as one input.
The error calculator 102 calculates an error between a target speed and the measured speed.
The controller 104 performs a control operation which compensates for the error calculated by the error calculator 102. For example, if the stepping motor rotates faster than the target speed, the controller 104 decreases a frequency of a driving pulse, and if the stepping motor rotates slower than the target speed, the controller 104 increases the frequency of the driving pulse.
The stepping motor driver 108 drives the stepping motor by receiving the driving pulse output from the controller 104. In detail, the stepping motor driver 108 receives the driving pulse output from the controller 104 and generates the stepping motor driving signal shown in the lower part of FIG. 2. The disturbance compensator 106 compensates for disturbance supplied to the stepping motor, and the noise compensator 112 compensates for measurement noise.
FIG. 3 is a schematic diagram of a stepping motor having 4 pairs of stators. The stepping motor moves by one step for one pulse input, i.e., by a distance between a stator and a neighboring stator. It is preferable that the distance between a stator and a neighboring stator is constant. However, the distance is not uniform in reality due to mechanical inaccuracy. This non-uniformity is reflected to a back EFM signal as it is.
FIG. 4 is a waveform diagram illustrating the back EMF signal which is generated when distances between stators are not uniform. The back EMF signal is generated by rotation of the spindle motor. Referring to FIG. 4, when the distances between stators are Sa and Sb, Ta and Tb denote time stator intervals required for the stepping motor to move by Sa and Sb, respectively.
The time stator intervals Ta and Tb are ideally equal to each other. However, in most cases, Ta and Tb will not be equal to each other due to mechanical inaccuracy. This non-uniformity of Ta and Tb results in instability of speed control.
A width of an input pulse corresponds to a distance between stators. Widths of the input pulse are uniform since it is considered that distances between stators are uniform.
However, as shown with reference to FIGS. 3 and 4, the distances between stators are not uniform, thereby causing a speed of the stepping motor, in particular an instantaneous speed, not to be uniform.